# kbas_leaflet$contain |> unique() |> sort()
kbas_leaflet <- kbas_leaflet |>
arrange(contain) |>
mutate(contain = forcats::as_factor(contain))
pal_kbas <- colorFactor(
domain = levels(kbas_leaflet$contain),
palette = c('#2e6ba6', '#e53d3d', '#59de9e')
)
iucn_palette <- tribble(
~id, ~cat, ~hex_colour,
'Ia', 'Ia Strict nature reserve', '#174721',
'Ib', 'Ib Wilderness area', '#7AC141',
'II', 'II National park', '#5D873B',
'III', 'III Natural monument or feature', '#AFBD36',
'IV', 'IV Habitat/species management area', '#C8DF8D',
'V', 'V Protected landscape/seascape', '#15477C',
'VI', 'VI Protected area with sustainable use of natural resource', '#7EA1B5',
'Not Applicable', 'NA Not Applicable', '#894444',
'Not Assigned', 'NAS Not Assigned', '#E60000',
'Not Reported', 'NR Not Reported', '#898944'
)
iucn_palette <- iucn_palette |>
filter(id %in% levels(raw_pa_data_pols$iucn_cat))
pal <- colorFactor(
domain = levels(raw_pa_data_pols$iucn_cat),
palette = iucn_palette$hex_colour
)
# pal <- colorFactor(
# domain = levels(raw_pa_data_pols$iucn_cat),
# c(
# '#232021',
# '#426f41',
# '#59ba49',
# '#c1178d',
# '#feb016',
# '#e61e24'
# )
# )
basemap_leaflet |>
addPolygons(
data = kbas_leaflet,
fillOpacity = 1,
fillColor = ~ pal_kbas(contain),
stroke = TRUE,
color = '#333333',
weight = ~ (triggered_by_birds * 2) + 0.5,
opacity = 1,
group = 'KBAs',
# label = ~ htmltools::htmlEscape(desig_eng),
options = pathOptions(pane = "polygons"),
popup = paste0(
'<b>',
kbas_leaflet$int_name,
'</b>',
'</br>',
'<a href="https://www.keybiodiversityareas.org/site/factsheet/',
kbas_leaflet$sit_rec_id,
'/assessment", target="_blank">Factsheet</a>',
'</br>',
'</br>',
'<b>Groups: </b>',
kbas_leaflet$contain,
'</br>',
'<b>National site name: </b>',
kbas_leaflet$nat_name,
'</br>',
'<b>Triggered by: </b>',
kbas_leaflet$triggered_by,
'</br>',
'<b>Year of last assessment: </b>',
kbas_leaflet$year
)
) |>
addPolygons(
data = raw_pa_data_pols,
weight = 0.5,
fillOpacity = 0.7,
fillColor = ~ pal(iucn_cat),
# stroke = FALSE,
color = '#333333',
opacity = 0.7,
group = 'Protected areas',
label = ~ htmltools::htmlEscape(desig_eng),
# label = ~ htmltools::htmlEscape(iucn_cat),
options = pathOptions(pane = "polygons"),
popup = paste0(
'<b>',
raw_pa_data_pols$name_eng,
'</b>',
'</br>',
'</br>',
'<b>Designation: </b>',
raw_pa_data_pols$desig_eng,
'</br>',
'<b>IUCN category: </b>',
raw_pa_data_pols$iucn_cat,
'</br>',
'<b>Realm: </b>',
raw_pa_data_pols$realm,
'</br>',
'<b>Status (year): </b>',
raw_pa_data_pols$status,
' (',
raw_pa_data_pols$status_yr,
')'
)
) |>
addLegend(
data = kbas_leaflet,
pal = pal_kbas,
values = levels(kbas_leaflet$contain),
opacity = 0.9,
group = 'KBAs',
title = 'KBAs'
) |>
addLegend(
data = raw_pa_data_pols,
pal = pal,
values = levels(raw_pa_data_pols$iucn_cat),
opacity = 0.9,
group = 'Protected areas',
title = "Protected areas </br> IUCN cats"
) |>
addLayersControl(
baseGroups = c(
# "Topography",
"Open Street Map",
"Satellite"
# "Terrain",
),
overlayGroups = c(
'KBAs',
'Protected areas'
),
options = layersControlOptions(collapsed = FALSE, position = "bottomright")
) |>
hideGroup(c('Protected areas')) |>
addScaleBar(position = c("bottomleft"), options = scaleBarOptions())